﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Lilium.ComponentModel
{
	public interface IExtensionManager
	{
		void AttachExtension<TOwner>(TOwner owner, IExtension<TOwner> extension);
		void DetachExtension<TOwner>(TOwner owner, IExtension<TOwner> extension);

		IEnumerable<TExtension> GetExtensions<TExtension, TOwner>(TOwner owner);
	}
}